home *** CD-ROM | disk | FTP | other *** search
- page 60, 132
- title Color.asm - Assembly subprogram Color Test Program
- ;
- ; ROUTINES TO SETUP BACK/FORE COLOR, BORDER COLOR, AND
- ; DISPLAY-PAGE VARIABLES FOR RUNCOBOL.
- ; NOTE: VARIABLES' ADDRESSES ARE KNOWN.
- ;
- ;SCCS information:
- ;@(#) color.asm ver. 1.3 last update 85/09/12 14:36:59
- ;@(#) This source obtained from the s file on 85/09/12 at 14:37:10
-
- CODE SEGMENT
- ASSUME CS:CODE,DS:CODE
- ;
- ; DECLARE ENTRIES IN PROCTBL FORMAT.
- ;
- DW MODULE_ENDS
- DB 12
- DB 'COLORCNG.COM'
- DW COLORCNG_ENTRY
- DB 11
- DB 'BORDCNG.COM'
- DW BORDCNG_ENTRY
- DB 11
- DB 'PAGECNG.COM'
- DW PAGECNG_ENTRY
- DB 0
- ; Sccs information :
- db '@ #( ) (@)#@(#)' ;SCCS id.
- db 'color.asm' ;Program name % M %.
- db ' ver. '
- db '1.3' ;version % I %.
- db ' 85/09/12 ' ;date % E %.
- db '14:36:59' ;time % U %.
- db '>' ;Ending indicator.
- ;
- ; RUNCOBOL'S VARIABLES' ADDRESSES
- ;
- BCOLOR EQU 101H ; BACKGROUND COLOR, FOR BIOS I/O
- FCOLOR EQU 102H ; FOREGROUND COLOR, FOR BIOS I/O
- BDCOLOR EQU 103H ; BORDER COLOR, FOR BIOS I/O
- VIDEO_PAGE EQU 104H ; DISPLAY-PAGE, FOR BIOS I/O
-
- ;
- ; B/F COLOR CHANGE ROUTINE.
- ; CALLED FROM RM/COBOL WITH THE SYNTAX
- ; CALL "COLORCNG.COM" GIVING BCOLOR, FCOLOR.
- ;
- COLORCNG_ENTRY PROC FAR
- MOV DI,ES:[BX+2]
- MOV AL,ES:[DI+1] ;AL <- PASSED FCOLOR
- MOV DI,ES:[BX+4]
- MOV AH,ES:[DI+1] ;AH <- PASSED BCOLOR
- ;
- ; SETUP BIOS COLOR VARIABLES FOR RUNCOBOL
- ;
- MOV DI,BCOLOR
- MOV ES:[DI],AH
- MOV DI,FCOLOR
- MOV ES:[DI],AL
- XOR AX,AX
- RET
- COLORCNG_ENTRY ENDP
-
- ;
- ; BORDER COLOR CHANGE ASM ROUTINE.
- ; CALLED FROM RM/COBOL WITH SYNTAX
- ; CALL "BORDCNG.COM" GIVING BDCOLOR.
- ;
- BORDCNG_ENTRY PROC FAR
- MOV DI,ES:[BX+2]
- MOV AL,ES:[DI+1] ;AL <- PASSED BORDER COLOR
- MOV DI,BDCOLOR
- MOV ES:[DI],AL ;SETUP BIOS BORDER COLOR VARIABLE
- XOR AX,AX
- RET
- BORDCNG_ENTRY ENDP
-
- ;
- ; DISPLAY-PAGE CHANGE ASM ROUTINE.]
- ; CALLED FROM RM/COBOL WITH SYNTAX
- ; CALL "PAGECNG.COM" GIVING VIDEO_PAGE.
- ;
- PAGECNG_ENTRY PROC FAR
- MOV DI,ES:[BX+2]
- MOV AL,ES:[DI+1] ;AL <- PASSED DISPLAY-PAGE
- MOV DI,VIDEO_PAGE
- MOV ES:[DI],AL ;SETUP BIOS DISPLAY-PAGE VARIABLE
- XOR AX,AX
- RET
- PAGECNG_ENTRY ENDP
-
- MODULE_ENDS EQU $
- CODE ENDS
- END
-